| 0,22 | 
 E:Type, pred?:(E
E:Type, pred?:(E
 (E+Unit)), a, b, e:E.
(E+Unit)), a, b, e:E.
 first(y) & x = pred(y)
first(y) & x = pred(y)  E)
 E)

 (a before b
 (a before b  eventlist(pred?;e)
 eventlist(pred?;e)

 (
 (
 

 ((a ((
 ((a (( x,y.
x,y.  first(y) & x = pred(y)
first(y) & x = pred(y)  E)^*) e)
 E)^*) e)

 (& (b ((
 (& (b (( x,y.
x,y.  first(y) & x = pred(y)
first(y) & x = pred(y)  E)^*) e)
 E)^*) e)

 (& (a
 (& (a  x,y.
x,y.  first(y) & x = pred(y)
first(y) & x = pred(y)  E^+ b))
 E^+ b))